package com.nuanshui.heatedloan.order.integration.execute.bizexecute;

import com.alibaba.dubbo.config.annotation.Reference;
import com.nuanshui.heatedloan.baseservice.facade.OrderNumGenerate;
import com.nuanshui.heatedloan.constant.GlobalParam;
import com.nuanshui.heatedloan.order.enums.OrderOptionType;
import com.nuanshui.heatedloan.order.integration.annotation.OrderExecuteAnnotation;
import com.nuanshui.heatedloan.order.integration.bean.OrderResult;
import com.nuanshui.heatedloan.order.integration.form.OrderExecuteForm;

import java.util.Map;

/**
 * 展馆预约订单, 收费的订单生成
 * @Author: Gonzo
 * @Date 2017/4/12下午3:21
 * @since 1.4.2
 */
@OrderExecuteAnnotation(value = "museumAppointNotFreeOrderExecute", bizOrderOptionType = OrderOptionType.MUSEUM_APPOINTMENT_NOTFREE_ORDER)
public class MuseumAppointNotFreeOrderExecute extends AbstractOrderExecute {

    @Reference(url = GlobalParam.BASESERVICE_DUBBO_SERVER, timeout = GlobalParam.DUBBO_SERVER_TIME_OUT,version = GlobalParam.BASESERVICE_DUBBO_SERVER_VERSION)
    private OrderNumGenerate orderNumGenerate;

    @Override
    protected void doCancelOrder(OrderExecuteForm from, OrderResult result) {

    }

    @Override
    protected void doPlaceOrder(OrderExecuteForm form, OrderResult result) {

    }

    @Override
    protected String generateOrderNum(OrderExecuteForm form) {
        return null;
    }

    @Override
    protected void beforePlaceOrder(OrderExecuteForm form, OrderResult result) {

    }

    @Override
    public Map<String, Object> listAppointmentOrderExecute(OrderExecuteForm form) {
        return null;
    }

    @Override
    public Map<String, Object> getAppointmentOrderDetailExecute(String orderNum, String userId) {
        return null;
    }

    @Override
    public OrderResult expireOrder(OrderExecuteForm form) {
        return null;
    }
}
